//1. 导入axios对象
import axios from "axios";
import { getToken } from '@/utils/auth'
import store from '@/store'
//2. 创建对象实例，create方法
const Server = axios.create({
  //请求接口的基础地址
  baseURL: 'http://localhost:8183/',
  //设置超时时间
  timeout: 4000
})

// 请求拦截器
Server.interceptors.request.use(

  config => {//这个config好像很大，包括了headers
    // do something before request is sent
    if (store.getters.token) {
      // let each request carry token
      // ['X-Token'] is a custom headers key
      // please modify it according to the actual situation
      config.headers['X-Token'] = getToken()
    }
    // console.log("config:",config);

    return config
  },
  error => {
    // do something with request error
    console.log(error) // for debug
    console.log("请求失败")
    return Promise.reject(error)
  })

// 响应拦截器
Server.interceptors.response.use(response =>{
  // 后台正常响应的状态，如果是200， 说明后台处理没有问题
  /*  if (response.status == 200) {
       return response.data;
   } */
  // return response.data 可以在这里统一的获取后台响应的数据进行返回，而这里面就没有请求头那些
  return response
}, error => {
  return Promise.reject(error);
})


export default Server // 导出自定义创建 axios 对象
